// pages/passRecoverySet/passRecoverySet.js
const app = getApp();
Page({

  /**
   * 页面的初始数据
   */
  data: {
    isBindingMobile: null,  //是否绑定了手机号
  },

  onLoad: function(options) {
    if (options.from == 'recover') {
      this.setData({
        from: 'recover' //判断是修改密码的最后一步，设置支付密码
      });
    }
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function(){
    wx.request({
      url: app.baseURL + 'Mine&a=set_pay',
      data: {
        type: 2, //
        user_id: app.globalData.userId
      },
      success: (res) => {
        //未设置支付密码
        this.setData({
          isBindingMobile: res.data.info.mobile
        });
        if (this.data.isBindingMobile == 0) {
          wx.showModal({
            title: '提示',
            content: '你还未绑定手机号码，请先绑定手机号码再来设置',
            showCancel: false,
            success: function (res) {
              wx.redirectTo({
                url: '/pages/bindingMobile/bindingMobile',
              })
            }
          })
        }
      },
      fail: (err) => {
        wx.showToast({
          title: '网络错误',
          icon: 'none'
        })
      }
    })
  },

  //数据提交
  formsubmit(e) {
    const password = e.detail.value.password,
      passwordAgin = e.detail.value.passwordAgin;
    //基本验证  
    if (!password) { this.toast('请设置支付密码'); return; }
    if (password.length != 6) { this.toast('支付密码长度为6'); return; }  
    if (password != passwordAgin) { this.toast('两次密码不一样，请重新输入'); return; }  
    //如果是修改支付密码
    let data = {
      user_id: app.globalData.userId, //用户id
      pwd: password, //支付密码
      re_pwd: passwordAgin //确认密码
    }
    let url = app.baseURL + 'Mine&a=found_pay';
    //如果是设置支付密码
    if (!this.data.from) {
      data.type = 1; //type: 1, 设置支付密码,否则是从修改支付密码页面进来修改重置支付密码的
      url = app.baseURL + 'Mine&a=set_pay';
    }

    wx.request({
      url: url, 
      data: data,
      success: (res) => {
        if (res.data.status == 0) {
          this.toast(res.data.info);
        }
        if (res.data.status == 1) {
          this.toast('设置成功');
          //获取页面栈
          let pages = getCurrentPages();
          //获取上一个页面
          let prev = pages[pages.length - 2];
          //调用上一个页面的setData方法，从而达到naviagtreBack返回传参的效果
          prev.setData({
            isSetPass: 1 //设置为已设置支付密码
          });
          setTimeout(() => {
            //返回到设置页面
            if (!this.data.from) {
              wx.navigateBack();
            } else {
              wx.navigateBack({
                delta: 2
              });
            }
          }, 500)
        }
      }, 
      fail: (err) => {
        this.toast('网络错误');
      }
    })
  },

  //提示弹窗
  toast(msg) {
    wx.showToast({
      title: msg,
      icon: 'none'
    })
  },
})